
// 联合类型
// 联合类型（Union Types）表示取值可以为多种类型中的一种。

let a:string|number = 100;
    a = "hello";
    // a = true;


// 访问联合类型的属性或方法
// 当 TypeScript 不确定一个联合类型的变量到底是哪个类型的时候，我们只能访问此联合类型的所有类型里共有的属性或方法：

// function getLength(arg: string | number): number {
//     return arg.length;  // 报错 如果arg为number => 没有length
// }


// 解决方法1: 
//  断言   data as 类型  => 欺骗ts,将数据断言为某个类型,
// function getLength(arg: string | number): number {
//     return (arg as string).length; 
// }



/* function getLength(arg: string | number): number {
    if(typeof arg == "string"){
        return arg.length;
    }else {
        return arg.toString().length;
    }
}
 */












export default 4;